home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
language
/
bcf.lzh
/
LIES.TXT
< prev
next >
Wrap
Text File
|
1990-03-19
|
15KB
|
437 lines
------------------------------------------------
| BC-FORTRAN77 Vers.1.3C |
| Copyright: Andre Koestli |
| 1990 Martin-Luther-Str.63 |
| D7000 Stuttgart 50 |
|----------------------------------------------|
| Die Version "C" von BC-FORTRAN77, bestehend |
| aus den nachfolgend beschriebenen 5 Dateien, |
| ist vollstaendig von mir programmiert. Ich |
| gestatte freies Nutzungsrecht an Vers.C fuer |
| nichtkommerzielle Anwendungen, alle Rechte |
| bleiben jedoch bei mir, insbesondere ist der |
| Verkauf der Vers.C, auch im Zusammenhang mit |
| anderen Produkten, nicht erlaubt. Jeder Ko- |
| pie ist dieser Text unveraendert beizufuegen.|
| Fuer kommerzielle Anwendungen ist die Vers.P |
| vorgesehen, die lizenzpflichtig ist. |
| Die Anwendung fuer militaerische Zwecke oder |
| entsprechende Forschung ist verboten! |
| Maerz 1990 A.Koestli |
------------------------------------------------
BC-FORTRAN77 Version C ist Teil eines umfangreichen
Entwicklungssystems, der Vers.P (siehe unten). Vers.C
soll in einfacher Weise den fuer Programmierkurse noetigen
Compiler zur Verfuegung stellen. Dem kommt entgegen, dass
diese Software fast identisch auf AMIGA, ATARI ST und
MS-DOS Rechnern laeuft.
BC-FORTRAN77 Vers.P
-------------------
BC-FORTRAN77 Vers.P ist ein umfangreiches Entwicklungs-
system, das ausser Compiler und Linker auch noch Editor,
Precompiler und Versionsverwaltung unter einer Benutzer-
oberflaeche vereinigt. Dabei wird dafuer gesorgt, dass im
Entwicklungszyklus automatisch nur die jeweils veraen-
derten Unterprogramme neu uebersetzt werden; selbst bei
Programmen mit mehreren hundert Unterprogrammen ergibt
sich so ein Entwicklungsschritt (Editieren, uebersetzen,
linken und starten) von wenigen Sekunden. Mathematische
Koprozessoren werden in Vers.P unterstuetzt, ebenso wie
spezielle Befehle des 68020 Prozessors.
Vers.P enthaelt einen komfortablen Debugger auf Quelltext
Basis zum interaktiven Austesten sowie einige Biblio-
theken z.B. zur einfachen Plotausgabe auf dem Bildschirm.
Inklusive 150 Seiten Handbuch kostet BC-FORTRAN77 Vers.P
DM 350.- und kann bei der oben angegebenen Adresse
bestellt werden. (Bitte AMIGA oder ATARI ST angeben. Fuer
MS-DOS existiert Vers.P derzeit nicht.)
BC-FORTRAN77 Vers.C
-------------------
BC-FORTRAN77 Vers.C, auf die sich der Rest dieses Textes
bezieht, besteht aus folgenden Dateien:
LIES.TXT Dieser Text
BCF.TTP Compiler
BCL.TTP Linker
BCRTSY.B Laufzeitsystem
MATHLIB.B Bibliothek mit Standardfunktionen
Wird eine Kopie angefertigt, muessen immer alle Dateien
unveraendert uebernommen werden.
Am besten arbeitet man mit einer Command-Shell. Falls
keine Shell vorhanden ist koennen die Programme aber auch
vom Desktop gestartet werden, die Optionen und
Dateinamen muessen dann in ein Window eingegeben werden,
das nach dem anklicken des Programms erscheint.
Installation.
-------------
Die einfachste Arbeitsweise ergibt sich, wenn nur in
einem Directory gearbeitet wird, in dem dann alle
Dateien von BC-FORTRAN77 stehen.
Sollen mehrere Directories verwendet werden, so kopiert
man BCF.TTP und BCL.TTP in ein Directory, in dem die
Shell nach Programmen sucht. BCRTSY.B und MATHLIB.B
sollten in das Directory \BC des aktuellen Laufwerks
kopiert werden, damit sie vom Linker gefunden werden.
Compiler
--------
Der Compiler wird gestartet mit
BCF [-Option...] Datei...
oder vom Desktop durch anklicken von BCF.TTP und
anschliessender Eingabe von Optionen und Dateinamen.
Enthaelt Datei keinen Punkt, so wird .F angehaengt.
Die uebersetzte Form der Programme wird in Datei.B
abgelegt.
Beispiel:
BCF -D TEST.F
Uebersetzt TEST.F mit Debug-Option nach TEST.B
BCF TEST SUB
Uebersetzt TEST.F nach TEST.B und SUB.F nach SUB.B
BCF TEST.X
uebersetzt TEST.X nach TEST.B
Compiler Optionen
-----------------
-D Debug, fasst -BVL zusammen.
-B deBugcode, impliziert -H und erzeugt
ausserdem Code fuer Debuggeraufrufe,
zum Ueberpruefen von Feldgrenzen und
Substrings.
-H parcHeck, Code zum Ueberpruefen der Parameter-
listen und auf Stackueberlauf erzeugen.
-V Varlist: Variablenliste fuer Debugger.
-L Lineslist: Zeilennummernliste fuer Debugger.
-U Uppercase: Klein- in Grossbuchstaben wandeln
(ausser in Characterkonstanten und
Formaten). Fehlt diese Option, so sind
xy, XY, Xy und xY vier verschiedene
Variablen!
-F Freeinput: Quellprogramm nicht im FORTRAN
Format. Nichtstandart!
-P Protokoll: Ausgabe der uebersetzten Zeilen.
-W Am Ende auf Return warten, sinnvoll, wenn
vom Desktop gestartet wird.
Sprachumfang
------------
BC-FORTRAN77 uebersetzt den vollstaendigen Standard nach
ANSI/ISO. Der Sprachstandard wird allerdings durch
einige Besonderheiten verletzt (meistens werden diese
als Erweiterungen bezeichnet). Ich empfehle dringend,
diese Dialektkonstrukte nicht zu verwenden, da sie nicht
standardisiert und damit nicht genau definiert sind.
Die wichtigsten dieser Besonderheiten:
INTEGER*1 8 bit INTEGER
INTEGER*2 16 bit INTEGER
INTEGER*4 wie INTEGER
LOGICAL*1 8 bit LOGICAL
LOGICAL*2 16 bit LOGICAL
LOGICAL*4 wie LOGICAL
IMPLICIT NONE abschalten der impliziten Typdef.
COMMON /%adr/ Absoluter Common, adr ist Konstante
oder einfache Variable.
EQUIVALENCE() zwischen Character und anderen Typen
sowie Mischen im Common.
Rekursive Unterprogrammaufrufe.
Namen mit max. 8 Zeichen (Standart: 6).
Als wichtigste Beschraenkungen gibt es:
32kB Code pro Unterprogramm
32kB SAVE/DATA pro Unterprogramm oder Blockdata
700 Unterprogramme pro Datei
500 Verschiedene Commons pro Datei.
Daneben gibt es eine Reihe von Beschraenkungen, die bei
unvernuenftig grossen Unterprogrammen zu Fehlermeldungen
fuehren, meistens waere dann aber ohnehin die 32kB Code
Grenze ueberschritten.
Linker
------
Der Linker wird gestartet mit:
BCL [-Optionen...] Datei...
oder vom Desktop durch anklicken von BCL.TTP und
anschliessender Eingabe von Optionen und Dateinamen.
Enthaelt Datei keinen Punkt, so wird .B angehaengt.
Die Programmdatei wird mit dem Namen der ersten Datei,
aber mit .PRG statt .B, gespeichert. Werden mathe-
matische Standardfunktionen verwendet, so muss auch die
Datei MATHLIB.B aufgefuehrt werden. Das Laufzeitsystem
BCRTSY.B wird automatisch geladen.
Beispiel:
BCL -S16 TEST SUB MATHLIB
oder
BCL -S16 TEST.B SUB.B MATHLIB.B
Linkt die Dateien TEST.B und SUB.B und speichert unter
TEST.PRG das lauffaehige Programm, das eine Stackgroesse
von 16kB verwendet.
Linker Optionen
---------------
-Sn Stackgroesse fuer das zu erzeugende Programm
wird auf n kB gesetzt. Fehlt diese
Option, so wird ein sehr grosser Stack
angenommen. Auf dem Stack werden alle
lokalen Variablen/Felder einer Unter-
programmverschachtelung abgelegt.
-O Optimiertes Linken: nirgends aufgerufene
Unterprogramme werden weggelassen.
-P Protokoll: Liste der Commonbloecke und
Programmmodule.
-W Am Ende auf Return warten, sinnvoll, wenn
vom Desktop gestartet wird.
Beschraenkungen
---------------
Die wichtigste Beschraenkung liegt in der RAM Groesse: die
zu erzeugende Programmdatei (ohne Commons und Stack)
kann maximal so gross sein, wie der groesste freie
Speicherblock nach Laden von BCL. Andererseits kann, b